/**
 * Handle changed data.
 *
 * @param {Object} oldValue old value
 * @param {Object} newValue new value
 * @param {JSEvent} event the event that triggered the action
 *
 * @returns {Boolean} valid value
 *
 * @properties={typeid:24,uuid:"2DA13898-961B-4A71-A165-5052F8DCB337"}
 */
function tot_valores()
{
	if ((op_cabecera_to_op_detalle.importe==null) || (op_cabecera_to_op_detalle.importe==0))
	{
		globals.gMensaje="Debe ingresar Importe"
		globals.gMensajes()
		//elements.importe.requestFocus(true)
		return false;
	}
	else
	{
	globals.gtotal_valores=0
	for ( var i = 1 ; i <= op_cabecera_to_op_detalle.getSize(); i++ )
	{
		op_cabecera_to_op_detalle.setSelectedIndex(i)
		globals.gtotal_valores+= op_cabecera_to_op_detalle.importe
	}
	/* elements.valor_id.requestFocus(true) */
	}
}

/**
 * Handle changed data.
 *
 * @param {Object} oldValue old value
 * @param {Object} newValue new value
 * @param {JSEvent} event the event that triggered the action
 *
 * @returns {Boolean} valid value
 *
 * @properties={typeid:24,uuid:"32C9C106-A231-4776-AE23-F56A47C7FC74"}
 */
function valor_elegido() 
{
	globals.gcuentas_variable=0
	elements.importe.enabled=true;
	elements.cuenta_cyb_id.enabled=true;
	elements.cheque_nro.enabled=true;
	elements.fecha_emision_chq.enabled=true;
	elements.fecha_pago.enabled=true;
	if (op_detalle_to_valores.es_cheque==1) 
	{ // es cheque  
		if (op_detalle_to_valores.es_propio== 1)
		{
			globals.gcuentas_variable=1
			elements.importe.enabled=true;
			elements.cuenta_cyb_id.enabled=true;
			elements.cheque_nro.enabled=true;
			elements.fecha_emision_chq.enabled=true;
			elements.fecha_pago.enabled=true;
		}
		else
		{ 		// va a mostrar cheques de terceros con estado en caja y cuenta caja 
		application.showFormInDialog(forms.opago_v2_20,200,900,700,400,'Datos Cheque Terceros',true,false,'cheques_ter',true);
		//elements.valor_id.requestFocus(true)  porque vuelve a hacer todo lo mismo
		elements.importe.enabled=false;
		elements.cuenta_cyb_id.enabled=false;
		elements.cheque_nro.enabled=false;
		elements.fecha_emision_chq.enabled=false;
		elements.fecha_pago.enabled=false;
		}
	}
	else		
	{// es efectivo o transferencia   ->  pedir importe y cta
	// poner foco en importe	no permitir ingresar los otros campos
	elements.importe.requestFocus(true)
	elements.cuenta_cyb_id.enabled=true;
	elements.cheque_nro.enabled=false;
	if (op_detalle_to_valores.usa_cta_bco==1)//26/04/2010  es transferencia se agrega el if completo
	{
		elements.cheque_nro.enabled=true;     
		globals.gcuentas_variable=1;          
	}  
	else
	{// es efectivo 04/06/2010
		banco_sucursal=null  //04/06/2010
	}
		
	elements.fecha_emision_chq.enabled=false;
	elements.fecha_pago.enabled=false;
	}
}

/**
 *
 * @properties={typeid:24,uuid:"7DF1C6F2-3C37-4C7E-83CE-BB665E25DCEA"}
 */
function validar_importe() 
{
	if ((op_cabecera_to_op_detalle.importe==null) || (op_cabecera_to_op_detalle.importe==0))
	{
		globals.gMensaje="Debe ingresar Importe"
		globals.gMensajes()
		elements.importe.requestFocus(true)
		return false;
	}
}

/**
 * Perform the element default action.
 *
 * @param {JSEvent} event the event that triggered the action
 *
 * @properties={typeid:24,uuid:"C16506F0-046C-43F5-AACB-00E939C93D88"}
 */
function IraCheques() 
{
	if (op_detalle_to_valores.es_cheque==1)
		{ 
			if (op_detalle_to_valores.es_propio==1) 
			application.showFormInDialog(forms.opago_v2_21,500,200,500,400,'Datos Cheque Propio',true,false,'cheques_prop',true);				
			else
			application.showFormInDialog(forms.opago_v2_22,500,200,500,400,'Datos Cheque Terceros',true,false,'cheques_ter',true);
		}
}

/**
 * Handle changed data.
 *
 * @param {Object} oldValue old value
 * @param {Object} newValue new value
 * @param {JSEvent} event the event that triggered the action
 *
 * @returns {Boolean} valid value
 *
 * @properties={typeid:24,uuid:"5B6E676D-A203-4E95-90DB-887570D7BAA9"}
 */
function onDataChange_fecha_emision() 
{
	if (op_detalle_to_valores.es_cheque==1)
	{
		elements.fecha_pago.enabled=true;
		if (op_detalle_to_valores.es_ch_difer!=1)
		{
			fecha_pago=fecha_emision_chq
			elements.fecha_pago.enabled=false;
		}
	}
}

/**
 * Perform the element default action.
 *
 * @param {JSEvent} event the event that triggered the action
 *
 * @properties={typeid:24,uuid:"D86BEF27-C4E0-48E8-909D-63C565341931"}
 */
function prepara_renglon() 
{
	////////////////////////////////////////////
	elements.importe.enabled=true;
	elements.cuenta_cyb_id.enabled=true;
	elements.cheque_nro.enabled=true;
	elements.fecha_emision_chq.enabled=true;
	elements.fecha_pago.enabled=true;
	////////////////////////////////////////////
	globals.gcuentas_variable=0
	if (op_detalle_to_valores.es_cheque==1)
	{ // es cheque   habilita ingreso de todos los campos
		elements.importe.enabled=true;
		elements.cuenta_cyb_id.enabled=true;
		elements.cheque_nro.enabled=true;
		elements.fecha_emision_chq.enabled=true;
		elements.fecha_pago.enabled=true;
		if (op_detalle_to_valores.es_propio== 1)
		{// es propio
			globals.gcuentas_variable=1
		}
		else
		{ // es de terceros
		elements.importe.enabled=false;
		elements.cuenta_cyb_id.enabled=false;
		elements.cheque_nro.enabled=false;
		elements.fecha_emision_chq.enabled=false;
		elements.fecha_pago.enabled=false;
		}
	}
	else		
	{// es efectivo o transferencia   pedir solo importe y cta  y nro transf.
	elements.cuenta_cyb_id.enabled=true;
	elements.fecha_emision_chq.enabled=false;
	if (op_detalle_to_valores.usa_cta_bco==1) //26/04/2010  es transferencia se agrega el if completo con el else
	{
		elements.cheque_nro.enabled=true;  
		elements.fecha_emision_chq.enabled=true;
		globals.gcuentas_variable=1;          
	}
	else
	cheque_nro=null;
	elements.fecha_emision_chq.enabled=false;
	elements.fecha_pago.enabled=false;
    //cheque_nro=null; 26/04/2010
	fecha_emision_chq=null
	fecha_pago=null
	}
}

/**
 * Handle changed data.
 *
 * @param {Object} oldValue old value
 * @param {Object} newValue new value
 * @param {JSEvent} event the event that triggered the action
 *
 * @returns {Boolean} valid value
 *
 * @properties={typeid:24,uuid:"005287FA-611C-4C37-B573-A37F926A3EBD"}
 */
function valor_elegido_2(oldValue, newValue, event) 
{
	if(event.getType()==JSEvent.DATACHANGE)
		prepara_renglon();
	else
	{
		if(valor_id != null)
			prepara_renglon();
	}
	   
	return true;
}

/**
 * Handle record selected.
 *
 * @param {JSEvent} event the event that triggered the action
 *
 * @properties={typeid:24,uuid:"1F5D02E1-A9CE-4E02-B1CA-C54C3107C1F2"}
 */
function onRecordSelected_detalle(event) 
{
	if(valor_id != null)
		prepara_renglon();
}

/**
 * Handle changed data.
 *
 * @param {Object} oldValue old value
 * @param {Object} newValue new value
 * @param {JSEvent} event the event that triggered the action
 *
 * @returns {Boolean} valid value
 *
 * @properties={typeid:24,uuid:"263C9DAB-8DB7-4414-B501-34DB78EE0E42"}
 */
function banco_propio(oldValue, newValue, event) 
{
	var estado=ver_saldo();
	if (estado==true)
	{
	banco_sucursal=op_cabecera_to_op_detalle.uno_to_cuentas_cyb.descripcion;
	}
}

/**
 *
 * @properties={typeid:24,uuid:"44B2B855-C3B7-4A28-B15F-AF31B685BFC4"}
 */
function ver_saldo() 
{
if(op_cabecera_to_op_detalle.op_detalle_to_valores.usa_cta_bco!=1) // no es transferencia
	{ 
	if (op_cabecera_to_op_detalle.op_detalle_to_valores.es_cheque!=1) // es efectivo
	{ // es efectivo: debe chequear saldo 
	var fs_saldos=databaseManager.getFoundSet(controller.getServerName(),'saldos_caja')
	var estado=fs_saldos.find()
	if (estado==true)
	{
	fs_saldos.cuentas_cyb_id=cuentas_cyb_id;
	fs_saldos.moneda_id=1; // 15/06/2010 - SE ASUME moneda default - debería ser una global
	var found=fs_saldos.search();
	if (found==1)  
	{ // ver saldo existente 
		fs_saldos.setSelectedIndex(1);
    	if (importe>fs_saldos.saldo_efectivo)
    	{ // importe supera lo existente en caja
    		globals.gMensaje="Efectivo a pagar supera el saldo de la caja $" + fs_saldos.saldo_efectivo;
			globals.gMensajes();
			//importe=0;      25/6
			//tot_valores();  25/6
			return false;
    	}
    }
	}
	}
	}
}

/**
 * Handle changed data.
 *
 * @param {Object} oldValue old value
 * @param {Object} newValue new value
 * @param {JSEvent} event the event that triggered the action
 *
 * @returns {Boolean}
 *
 * @properties={typeid:24,uuid:"998AD5F8-B1B0-48F0-B24E-8AAAFB220C9A"}
 */
function onDataChange_importe(oldValue, newValue, event) 
{
	var estado=tot_valores();
	if (estado==false)
		return false;
	if (cuentas_cyb_id==null)
		elements.cuenta_cyb_id.requestFocus(true);
	var estado=ver_saldo();
	if (estado==false)
		return false;
	else
		return true;
}

/**
 * Handle focus element loosing focus.
 *
 * @param {JSEvent} event the event that triggered the action
 *
 * @returns {Boolean}
 *
 * @properties={typeid:24,uuid:"33E73B83-2EA9-4296-8C0D-60B785519361"}
 */
function onFocusLost_importe(event) 
{
	if (cuentas_cyb_id==null)
		elements.cuenta_cyb_id.requestFocus(true);
}
